export default function createElement(vnode) {  
    // 创建一个DOM节点，这个节点现在是孤儿节点（未上树或者说没插入）  
    // 依据节点选择器名称创建节点  
    let domNode = document.createElement(vnode.sel);  
  
    // 有子节点还是有文本??  
    if (vnode.text !== "" && (vnode.children === undefined || vnode.children.length === 0)) {  
        // 它内部是文字  
        domNode.innerText = vnode.text;  
    } else if (Array.isArray(vnode.children) && vnode.children.length > 0) {  
        // 它内部是子节点，就要递归创建节点  
        for (let i = 0; i < vnode.children.length; i++) {  
            let ch = vnode.children[i];  
            let newnode = createElement(ch);      
            // 直接在 domNode 上追加子节点  
            domNode.appendChild(newnode);  
        }  
    }  
  
    // 将创建的 DOM 节点引用存储在 vnode.elm 中（如果需要的话）  
    vnode.elm = domNode;  
  
    return domNode; // 直接返回 domNode  
}